package compilador.semantico;

import compilador.lexico.TipoToken;
import java.util.List;

/**
 * Representa as propriedades específicas dos símbolos da tabela de símbolos que
 * têm a categoria 'vetor'.
 *
 * @author Carlos H V Pinto
 * @author Lucas S Bueno
 */
public class PropriedadesVetor extends PropriedadesSimboloBasico {

    private String tipo;
    private int dimensoes; //quantidade de dimensões do vetor
    private List<String> tamanhoDimensoes; //representação em string do tamanho das dimensões    
    
    public PropriedadesVetor(String lexema) {
        super(lexema, TipoToken.Identificador, CategoriaSimbolo.Vetor);
    }
    
    public PropriedadesVetor() {
        super(null, TipoToken.Identificador, CategoriaSimbolo.Vetor);
    }

    public int getDimensoes() {
        return dimensoes;
    }

    public void setDimensoes(int dimensoes) {
        this.dimensoes = dimensoes;
    }

    public List<String> getTamanhoDimensoes() {
        return tamanhoDimensoes;
    }

    public void setTamanhoDimensoes(List<String> tamanhoDimensoes) {
        this.tamanhoDimensoes = tamanhoDimensoes;
    }    

    public String getTipo() {
        return tipo;
    }

    public void setTipo(String tipo) {
        this.tipo = tipo;
    }       
}
